//#include <physical/3d/foundation.h>
//#include <utl/logger.h>
//#include <mimalloc.h>
//
////primal::physical_foundation::physical_foundation() :physx::PxFoundation{}, error_cbk{}, alloctor_cbk{}
////{}
//
//void primal::physical_foundation::release()
//{}
//
//physx::PxErrorCallback& primal::physical_foundation::getErrorCallback()
//{
//	return this->error_cbk;
//}
//
//void primal::physical_foundation::setErrorLevel(physx::PxErrorCode::Enum mask)
//{}
//
//physx::PxErrorCode::Enum primal::physical_foundation::getErrorLevel() const
//{
//	return physx::PxErrorCode::Enum();
//}
//
//physx::PxAllocatorCallback& primal::physical_foundation::getAllocatorCallback()
//{
//	return this->alloctor_cbk;
//}
//
//bool primal::physical_foundation::getReportAllocationNames() const
//{
//	return false;
//}
//
//void primal::physical_foundation::setReportAllocationNames(bool value)
//{}
//
//void primal::physical_foundation::registerAllocationListener(physx::PxAllocationListener & listener)
//{}
//
//void primal::physical_foundation::deregisterAllocationListener(physx::PxAllocationListener & listener)
//{}
//
//void primal::physical_foundation::registerErrorCallback(physx::PxErrorCallback & callback)
//{}
//
//void primal::physical_foundation::deregisterErrorCallback(physx::PxErrorCallback & callback)
//{}
//
//bool primal::physical_foundation::error(physx::PxErrorCode::Enum c, const char* file, int line, const char* messageFmt, ...)
//{
//	utl::logger().info(messageFmt);
//	return false;
//}
//
//bool primal::physical_foundation::error(physx::PxErrorCode::Enum, const char* file, int line, const char* messageFmt, va_list)
//{
//	utl::logger().info(messageFmt);
//	return false;
//}
//
////primal::physical_foundation::~physical_foundation()
////{}
//
//void primal::physical_foundation::error_callback::reportError(physx::PxErrorCode::Enum code, const char* message, const char* file, int line)
//{
//	utl::logger().info(message);
//}
//
//void* primal::physical_foundation::allocation_callback::allocate(size_t size, const char* typeName, const char* filename, int line)
//{
//	return mi_malloc_aligned(size, 16);
//}
//
//void primal::physical_foundation::allocation_callback::deallocate(void* ptr)
//{
//	mi_free_aligned(ptr, 16);
//}
//
//void primal::error_callback::reportError(physx::PxErrorCode::Enum code, const char* message, const char* file, int line)
//{
//	utl::logger().info(message);
//}
//
//void* primal::allocation_callback::allocate(size_t size, const char* typeName, const char* filename, int line)
//{
//	return mi_malloc_aligned(size, 16);
//}
//
//void primal::allocation_callback::deallocate(void* ptr)
//{
//	mi_free_aligned(ptr, 16);
//}